#if !defined(__APP_POOL_)
#define __APP_POOL_

/**
 * @brief 初始化线程池,创建并开辟线程数组,创建消息队列
 *
 * @return 0 成功，-1 失败
 */
int app_pool_init();

/**
 *@brief:线程池的工作内容
 定义线程要执行什么工作,每个线程启动一个死循环,不停地尝试从队列中取任务

 */

/**
 *@brief:对外提供一个函数,用来向线程池中提交任务
 */
int app_pool_submit_task(void *(*func)(void *), void *arg);

/**
 * @brief 销毁线程池,释放线程数组,销毁消息队列
 *
 * @return 0 成功，-1 失败
 */
void app_pool_destroy();

#endif // __APP_POOL_
